package agenceVoyageVirtuel.client.control;

import agenceVoyageVirtuel.client.Agence_voyage_virtuel;
import agenceVoyageVirtuel.client.beans.ClientData;

import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.HasHorizontalAlignment;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.VerticalPanel;

public class HeaderPanel extends Composite {
	private EspacePersoPanier espacePersoPanier;
	private BarreRecherche barreRecherche;
	private MenuContextuel menuContextuel;
	private Image image;
	private final Agence_voyage_virtuel agence_voyage_virtuel;

	public HeaderPanel(Agence_voyage_virtuel agence_voyage_virtuel) {
		this.agence_voyage_virtuel = agence_voyage_virtuel;
		
		HorizontalPanel horizontalPanel = new HorizontalPanel();
		initWidget(horizontalPanel);
		horizontalPanel.setSize("1051px", "73px");
		
		image = new Image("images/banniere.jpg");
		horizontalPanel.add(image);
		image.setHeight("");
		
		image.addClickHandler(new ClickHandler() {
			
			@Override
			public void onClick(ClickEvent event) {
				getAgence_voyage_virtuel().selectDefaultView();
			}
		});
		
		VerticalPanel verticalPanel = new VerticalPanel();
		horizontalPanel.add(verticalPanel);
		
		espacePersoPanier = new EspacePersoPanier(this);
		verticalPanel.add(espacePersoPanier);
		
		barreRecherche = new BarreRecherche();
		verticalPanel.add(barreRecherche);
		
		menuContextuel = new MenuContextuel();
		verticalPanel.add(menuContextuel);
	}

	public EspacePersoPanier getEspacePersoPanier() {
		return espacePersoPanier;
	}
	public BarreRecherche getBarreRecherche() {
		return barreRecherche;
	}
	public MenuContextuel getMenuContextuel() {
		return menuContextuel;
	}
	public Image getImage() {
		return image;
	}

	public void login(ClientData result) {
		agence_voyage_virtuel.login(result);
	}

	public Agence_voyage_virtuel getAgence_voyage_virtuel() {
		return agence_voyage_virtuel;
	}

	public boolean isLogged() {
		return agence_voyage_virtuel.isLogged();
	}
}
